促進參與度Foster Engagement / 使用後臺傳輸 Use Background Transfers /最佳化圖形效能 Optimize Graphics Performance (原則)
Engagement 促進參與度

透過多個維度提升玩家的參與度和忠誠度,確保遊戲能夠長期吸引玩家並保持高活躍度。
A 激勵反覆嘗試
“再試一次” - 鼓勵玩家在失敗後重試,激發挑戰慾望。
“看看接下來是什麼” - 引導玩家探索下一步,保持遊戲的吸引力。
“看看結局” - 透過故事或遊戲程序的推動,促使玩家完成整個遊戲。
B 激勵重複遊戲
透過設計遊戲的整體結構和獎勵機制,激勵玩家多次參與遊戲。
透過設計挑戰、解鎖新內容、逐步揭示故事情節等方式,激勵玩家不斷回到遊戲中。
這個部分更關注如何讓玩家長期持續參與遊戲。
例如,設計讓玩家想要多次嘗試的關卡,或者透過劇情驅動玩家想要知道接下來的發展。
C 多層次的進展系統
互動機制(Interaction Mechanic):玩家在遊戲中的行為如何與遊戲互動。
獎勵機制(Reward Mechanic):玩家完成特定行為後的獎勵,以激勵持續參與。
擴充套件機制(Expansion Mechanic):透過獎勵解鎖新的遊戲內容或功能,推動玩家進一步參與。
這些機制透過環狀的“核心迴圈”(Core Loop)相互作用,以確保玩家不斷受到激勵,持續投入到遊戲中。

D 為所有玩家提供價值
免費玩家:設計遊戲時,確保免費玩家可以持續進展,同時展示付費玩家的好處,但不要強迫付費。
付費玩家:確保付費玩家在遊戲中獲得應有的回報,讓他們感受到投入的價值。
E 提供新鮮內容:
持續的故事情節:延續遊戲故事,使玩家有動力繼續體驗。
新遊戲關卡:增加新的關卡,保持遊戲的挑戰性。
新挑戰:引入新的挑戰或任務,增強遊戲的多樣性。
季節性內容:根據不同節日或季節推出特別內容,吸引玩家迴歸。
提前計劃更新:在遊戲釋出之前就規劃好後續的內容更新,以確保玩家在遊戲釋出後能持續獲得新體驗,防止流失。

“Paddle Mania 3000”的應用在iTunes Connect中的留存率(Retention)資料。圖表以熱力圖的形式呈現,顯示了使用者在安裝應用後不同天數的留存率。
X軸(上方的數字):表示使用者安裝應用後經過的天數(第1天、第2天……第12天)。
Y軸(左側的日期):表示使用者安裝應用的具體日期。
熱力圖顏色:每個方塊中的數字代表了在特定日期安裝應用的使用者在指定天數後的留存率。例如,5月23日安裝的1021個使用者中有43%在第1天仍然使用該應用。顏色深淺代表了留存率的高低。顏色越深,留存率越高;顏色越淺,留存率越低。

Use Background Transfers 使用後臺傳輸

以“Paddle Mania 3000”為例,該遊戲包含大量影象資產、多種語言的本地化檔案和音訊檔案,導致其下載包體積超過了行動網路下載限制。

A 將遊戲資源分為兩部分,一部分捆綁在應用內,另一部分在應用首次啟動後下載。首先提供全質量的初始關卡。隨著玩家的進展,逐步下載更多關卡。



B 使用NSURLSession進行後臺傳輸的機制:
服務功能:NSURLSession用於上傳和下載資料。
程序外完成:資料傳輸在應用程序之外進行。
傳輸完成後應用重新啟動:當傳輸完成時,應用會被重新啟動以處理新下載的內容。
加複雜性:這種方式增加了開發和管理的複雜性。


C 複雜性與注意事項:
處理邊界情況:開發者需要處理一些可能出現的邊界情況,例如磁碟空間不足或玩家提前到達未成功下載的新關卡。
遵循iOS的資料儲存指南,確保下載的內容儲存在正確的位置,避免不必要的佔用空間。

Optimize Graphics Performance 最佳化圖形效能

A 效能最佳化的重要性:
圖形效能最佳化對於遊戲的成功至關重要,尤其是對於那些需要高幀率和複雜圖形效果的遊戲。
開發者需要識別並解決可能的效能瓶頸,以確保遊戲的流暢執行。
B 常見的效能問題:
在圖形效能最佳化中,開發者需要避免低效的繪圖操作,特別是頻繁的紋理繫結和繪製少量幾何圖形的操作。相反,開發者應該努力減少繪圖呼叫次數,並在每次呼叫中處理更多的圖形內容,從而更好地利用GPU的處理能力,提高整體渲染效率。
常見問題:
繪圖呼叫過多:遊戲在渲染每一幀時呼叫了過多的繪圖指令(draw calls),這會增加CPU的開銷,導致效能下降。
每次繪圖呼叫處理的三角形過少:如果每次繪圖呼叫只處理少量的三角形(或其他幾何圖形),那麼這些呼叫的效率會很低,無法充分利用GPU的能力。
最糟糕的情況:
繫結紋理:每次繪圖呼叫都需要先繫結一個紋理。
繪製一個四邊形(quad):在每次呼叫中,只繪製一個簡單的四邊形。
重複:不斷重複繫結紋理和繪製四邊形的操作,這種低效的迴圈會極大地拖累遊戲的效能。

C 最佳化策略:
減少繪圖呼叫次數:將多個小的繪圖呼叫合併為一個大的呼叫,以降低CPU的開銷,並透過提高每次繪圖呼叫的多邊形數來提高效率。
使用批處理技術:透過批處理(batching)技術,將多個繪圖任務合併,以減少GPU的狀態變化和繪圖呼叫次數。
D 工具的使用:
GPU效能圖表:開發者可以使用Xcode中的GPU效能圖表來監測和分析遊戲的效能瓶頸。
GPU幀偵錯程式:透過使用GPU幀偵錯程式,開發者可以深入瞭解每一幀的渲染過程,識別出導致效能下降的特定繪圖呼叫或著色器。
OpenGL ES分析儀:這是Xcode中的一個工具,可以幫助開發者檢測和分析OpenGL ES的效能問題,提供具體的最佳化建議。

E 提升圖形效能的API:
SpriteKit 和 SceneKit:這些API提供了2D和3D遊戲開發的高效工具集,能夠在底層處理OpenGL的最佳化工作,從而減少開發者的工作量。
Metal:對於需要更高控制權和效能的遊戲,Metal API提供了直接訪問GPU的能力,允許開發者最大化利用裝置的圖形處理能力。
